DATA_BLOCK DB 1
STRUCT 	
	TEST1_A		: DATE_AND_TIME;
	TEST1_B		: DATE_AND_TIME;
	TEST2_A		: DATE_AND_TIME;
	TEST2_B		: DATE_AND_TIME;
	TEST3_A		: DATE_AND_TIME;
	TEST3_B		: DATE_AND_TIME;
	TEST4_A		: DATE_AND_TIME;
	TEST4_B		: DATE_AND_TIME;
	TEST5_A		: DATE_AND_TIME;
	TEST5_B		: DATE_AND_TIME;
	TEST6_A		: DATE_AND_TIME;
	TEST6_B		: DATE_AND_TIME;
	TEST7_A		: DATE_AND_TIME;
	TEST7_B		: DATE_AND_TIME;
	TEST8_A		: DATE_AND_TIME;
	TEST8_B		: DATE_AND_TIME;
	TEST9_A		: DATE_AND_TIME;
	TEST9_B		: DATE_AND_TIME;
	TEST10_A	: DATE_AND_TIME;
	TEST10_B	: DATE_AND_TIME;
	TEST11_A	: DATE_AND_TIME;
	TEST11_B	: DATE_AND_TIME;
	TEST12_A	: DATE_AND_TIME;
	TEST12_B	: DATE_AND_TIME;
	TEST13_A	: DATE_AND_TIME;
	TEST13_B	: DATE_AND_TIME;
	TEST14_A	: DATE_AND_TIME;
	TEST14_B	: DATE_AND_TIME;
	TEST15_A	: DATE_AND_TIME;
	TEST15_B	: DATE_AND_TIME;
	TEST16_A	: DATE_AND_TIME;
	TEST16_B	: DATE_AND_TIME;
	TEST17_A	: DATE_AND_TIME;
	TEST17_B	: DATE_AND_TIME;
	TEST18_A	: DATE_AND_TIME;
	TEST18_B	: DATE_AND_TIME;
	TEST19_A	: DATE_AND_TIME;
	TEST19_B	: DATE_AND_TIME;
	TEST20_A	: DATE_AND_TIME;
	TEST20_B	: DATE_AND_TIME;
	TEST21_A	: DATE_AND_TIME;
	TEST21_B	: DATE_AND_TIME;
	TEST22_A	: DATE_AND_TIME;
	TEST22_B	: DATE_AND_TIME;
	TEST23_A	: DATE_AND_TIME;
	TEST23_B	: DATE_AND_TIME;
	TEST24_A	: DATE_AND_TIME;
	TEST24_B	: DATE_AND_TIME;
	TEST25_A	: DATE_AND_TIME;
	TEST25_B	: DATE_AND_TIME;
	TEST26_A	: DATE_AND_TIME;
	TEST26_B	: DATE_AND_TIME;
	TEST27_A	: DATE_AND_TIME;
	TEST27_B	: DATE_AND_TIME;
	TEST28_A	: DATE_AND_TIME;
	TEST28_B	: DATE_AND_TIME;
	TEST29_A	: DATE_AND_TIME;
	TEST29_B	: DATE_AND_TIME;
	TEST30_A	: DATE_AND_TIME;
	TEST30_B	: DATE_AND_TIME;
	TEST31_A	: DATE_AND_TIME;
	TEST31_B	: DATE_AND_TIME;
	TEST32_A	: DATE_AND_TIME;
	TEST32_B	: DATE_AND_TIME;
	TEST33_A	: DATE_AND_TIME;
	TEST33_B	: DATE_AND_TIME;
	TEST34_A	: DATE_AND_TIME;
	TEST34_B	: DATE_AND_TIME;
END_STRUCT;
BEGIN
	TEST1_A		:= DT#1990-1-1-0:0:0.000;
	TEST1_B		:= DT#1990-1-1-0:0:0.000;
	
	TEST2_A		:= DT#2089-12-31-23:59:59.999;
	TEST2_B		:= DT#2089-12-31-23:59:59.999;
	
	TEST3_A		:= DT#1990-1-1-0:0:0.0;
	TEST3_B		:= DT#2089-12-31-23:59:59.999;
	
	TEST4_A		:= DT#1991-1-2-3:4:5.679;
	TEST4_B		:= DT#1991-1-2-3:4:5.678;
	
	TEST5_A		:= DT#1991-1-2-3:4:6.678;
	TEST5_B		:= DT#1991-1-2-3:4:5.678;
	
	TEST6_A		:= DT#1991-1-2-3:5:5.678;
	TEST6_B		:= DT#1991-1-2-3:4:5.678;
	
	TEST7_A		:= DT#1991-1-2-4:4:5.678;
	TEST7_B		:= DT#1991-1-2-3:4:5.678;
	
	TEST8_A		:= DT#1991-1-3-3:4:5.678;
	TEST8_B		:= DT#1991-1-2-3:4:5.678;
	
	TEST9_A		:= DT#1991-2-2-3:4:5.678;
	TEST9_B		:= DT#1991-1-2-3:4:5.678;
	
	TEST10_A	:= DT#1992-1-2-3:4:5.678;
	TEST10_B	:= DT#1991-1-2-3:4:5.678;
	
	TEST11_A	:= DT#1991-1-2-3:4:5.678;
	TEST11_B	:= DT#1991-1-2-3:4:5.679;
	
	TEST12_A	:= DT#1991-1-2-3:4:5.678;
	TEST12_B	:= DT#1991-1-2-3:4:6.678;
	
	TEST13_A	:= DT#1991-1-2-3:4:5.678;
	TEST13_B	:= DT#1991-1-2-3:5:5.678;
	
	TEST14_A	:= DT#1991-1-2-3:4:5.678;
	TEST14_B	:= DT#1991-1-2-4:4:5.678;
	
	TEST15_A	:= DT#1991-1-2-3:4:5.678;
	TEST15_B	:= DT#1991-1-3-3:4:5.678;
	
	TEST16_A	:= DT#1991-1-2-3:4:5.678;
	TEST16_B	:= DT#1991-2-2-3:4:5.678;
	
	TEST17_A	:= DT#1991-1-2-3:4:5.678;
	TEST17_B	:= DT#1992-1-2-3:4:5.678;
	
	TEST18_A	:= DT#2001-1-2-3:4:5.679;
	TEST18_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST19_A	:= DT#2001-1-2-3:4:6.678;
	TEST19_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST20_A	:= DT#2001-1-2-3:5:5.678;
	TEST20_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST21_A	:= DT#2001-1-2-4:4:5.678;
	TEST21_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST22_A	:= DT#2001-1-3-3:4:5.678;
	TEST22_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST23_A	:= DT#2001-2-2-3:4:5.678;
	TEST23_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST24_A	:= DT#2002-1-2-3:4:5.678;
	TEST24_B	:= DT#2001-1-2-3:4:5.678;
	
	TEST25_A	:= DT#2001-1-2-3:4:5.678;
	TEST25_B	:= DT#2001-1-2-3:4:5.679;
	
	TEST26_A	:= DT#2001-1-2-3:4:5.678;
	TEST26_B	:= DT#2001-1-2-3:4:6.678;
	
	TEST27_A	:= DT#2001-1-2-3:4:5.678;
	TEST27_B	:= DT#2001-1-2-3:5:5.678;
	
	TEST28_A	:= DT#2001-1-2-3:4:5.678;
	TEST28_B	:= DT#2001-1-2-4:4:5.678;
	
	TEST29_A	:= DT#2001-1-2-3:4:5.678;
	TEST29_B	:= DT#2001-1-3-3:4:5.678;
	
	TEST30_A	:= DT#2001-1-2-3:4:5.678;
	TEST30_B	:= DT#2001-2-2-3:4:5.678;
	
	TEST31_A	:= DT#2001-1-2-3:4:5.678;
	TEST31_B	:= DT#2002-1-2-3:4:5.678;
	
	TEST32_A	:= DT#2002-1-2-3:4:5.678;
	TEST32_B	:= DT#2001-2-2-3:4:5.678;
	
	TEST33_A	:= DT#2001-1-3-3:4:5.678;
	TEST33_B	:= DT#2001-1-2-3:4:5.679;
	
	TEST34_A	:= DT#2001-1-2-3:4:6.678;
	TEST34_B	:= DT#2001-1-2-3:4:5.679;
	
END_DATA_BLOCK

ORGANIZATION_BLOCK OB 1
VAR_TEMP
	TMP_DT1		: DATE_AND_TIME;
	TMP_DT2		: DATE_AND_TIME;
END_VAR
BEGIN
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST1_A,
		DT2 := DB1.TEST1_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST2_A,
		DT2 := DB1.TEST2_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST3_A,
		DT2 := DB1.TEST3_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST4_A,
		DT2 := DB1.TEST4_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST5_A,
		DT2 := DB1.TEST5_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST6_A,
		DT2 := DB1.TEST6_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST7_A,
		DT2 := DB1.TEST7_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST8_A,
		DT2 := DB1.TEST8_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST9_A,
		DT2 := DB1.TEST9_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST10_A,
		DT2 := DB1.TEST10_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST11_A,
		DT2 := DB1.TEST11_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST12_A,
		DT2 := DB1.TEST12_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST13_A,
		DT2 := DB1.TEST13_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST14_A,
		DT2 := DB1.TEST14_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST15_A,
		DT2 := DB1.TEST15_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST16_A,
		DT2 := DB1.TEST16_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST17_A,
		DT2 := DB1.TEST17_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST18_A,
		DT2 := DB1.TEST18_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST19_A,
		DT2 := DB1.TEST19_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST20_A,
		DT2 := DB1.TEST20_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST21_A,
		DT2 := DB1.TEST21_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST22_A,
		DT2 := DB1.TEST22_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST23_A,
		DT2 := DB1.TEST23_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST24_A,
		DT2 := DB1.TEST24_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST25_A,
		DT2 := DB1.TEST25_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST26_A,
		DT2 := DB1.TEST26_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST27_A,
		DT2 := DB1.TEST27_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST28_A,
		DT2 := DB1.TEST28_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST29_A,
		DT2 := DB1.TEST29_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST30_A,
		DT2 := DB1.TEST30_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST31_A,
		DT2 := DB1.TEST31_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST32_A,
		DT2 := DB1.TEST32_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST33_A,
		DT2 := DB1.TEST33_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1 := DB1.TEST34_A,
		DT2 := DB1.TEST34_B,
		RET_VAL := M 0.0,
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	
	// Invalid BCD values are ok, except for year field
	LAR1		P##TMP_DT1
	L		DW#16#00FFFFFF
	T		D [AR1, P#0.0]
	L		DW#16#FFFFFFFF
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		0
	T		D [AR1, P#0.0]
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		DW#16#00FFFFFF
	T		D [AR2, P#0.0]
	L		DW#16#FFFFFFFF
	T		D [AR2, P#4.0]
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		0
	
	// Check invalid year BCD value
	LAR1		P##TMP_DT1
	L		DW#16#FF000000
	T		D [AR1, P#0.0]
	L		0
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	0
	__ASSERT==	M 0.0,		0
	LAR1		P##TMP_DT1
	L		0
	T		D [AR1, P#0.0]
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		DW#16#FF000000
	T		D [AR2, P#0.0]
	L		0
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	0
	__ASSERT==	M 0.0,		0
	LAR1		P##TMP_DT1
	L		DW#16#FF000000
	T		D [AR1, P#0.0]
	L		0
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	0
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		0
	T		D [AR1, P#0.0]
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		DW#16#FF000000
	T		D [AR2, P#0.0]
	L		0
	T		D [AR2, P#4.0]
	SET
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	0
	__ASSERT==	M 0.0,		1
	
	
	// Check each byte invididually with invalid BCD value and upper bit set.
	// This checks for a signedness bug in comparison.
	LAR1		P##TMP_DT1
	L		DW#16#00FF0000
	T		D [AR1, P#0.0]
	L		DW#16#00000000
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		DW#16#0000FF00
	T		D [AR1, P#0.0]
	L		DW#16#00000000
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		DW#16#000000FF
	T		D [AR1, P#0.0]
	L		DW#16#00000000
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		DW#16#00000000
	T		D [AR1, P#0.0]
	L		DW#16#FF000000
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		DW#16#00000000
	T		D [AR1, P#0.0]
	L		DW#16#00FF0000
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		DW#16#00000000
	T		D [AR1, P#0.0]
	L		DW#16#0000FF00
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	LAR1		P##TMP_DT1
	L		DW#16#00000000
	T		D [AR1, P#0.0]
	L		DW#16#000000FF
	T		D [AR1, P#4.0]
	LAR2		P##TMP_DT2
	L		0
	T		D [AR2, P#0.0]
	T		D [AR2, P#4.0]
	CLR
	=		M 0.0
	CALL "GE_DT" (
		DT1	:= #TMP_DT1,
		DT2	:= #TMP_DT2,
		RET_VAL	:= M 0.0
	)
	__ASSERT==	__STW BIE,	1
	__ASSERT==	M 0.0,		1
	
	
	
	CALL		SFC 46 // Stop CPU
END_ORGANIZATION_BLOCK
